# 把所有的源码包和补丁放在一个能够从 chroot 环境访问的目录，例如 /mnt/lfs/sources/。
# 切换到 /mnt/lfs/sources/ 目录。
# 对于每个软件包：
#     使用 tar 程序，解压需要构建的软件包。在第 5 章和第 6 章中解压软件包时，确认您以用户 lfs 的身份登录。
#     除了使用 tar 命令解压源码包外，不要使用其他任何将源代码目录树置入工作目录的方法。特别需要注意的是，使用 cp -R 从其他位置复制源代码目录树会破坏其中的时间戳，从而导致构建失败。
#     切换到解压源码包时产生的目录。
#     根据指示构建软件包。
#     构建完成后，切换回包含所有源码包的目录。
#     除非另有说明，删除解压出来的目录。

set -e

package_tar_name=$1
package_name=`echo $package_tar_name | sed 's/\(.*\)\.tar\..*/\1/'`
chapter=5
if [ ! -z "$2" ]; then chapter=$2; fi

echo "构建开始：$package_name $chapter";

pushd $LFS/sources
    tar -xvf $package_tar_name
    cd $package_name
    bash -e /home/checx/projects/lfs/chapter$chapter/$package_name.sh 2>&1 | tee /home/checx/projects/lfs/chapter5/logs/$package_name.log
    cd ..
    rm -rf $package_name
popd

echo "构建结束：$package_name $chapter";